// 持久化存储的 key
const search_history = 'search_history'

Page({
  /**
   * 页面的初始数据
   */
  data: {
    keyword: '',
    recentSearches: wx.getStorageSync(search_history) || ['手机', '电脑', '运动鞋'],
    hotSearches: ['智能手表', '无线耳机', '平板电脑'],
    isShowDelete: false
  },
  onSearch(){
    // 非空判断
    if (this.data.keyword.trim() === '') {
      wx.showToast({ title: '请输入商品名称',icon: 'none' })
      return
    }
    // 前添加
    this.data.recentSearches.unshift(this.data.keyword)
    // 数组去重
    const list = Array.from(new Set(this.data.recentSearches))
    // 超过 5 条，移除最开始那条
    if (this.data.recentSearches.length > 5) {
      list.pop()
    }
    // 更新UI
    this.setData({
      recentSearches: list,
      keyword: ''
    })
    // 本地存储
    wx.setStorageSync(search_history,this.data.recentSearches)
  },
  // 切换删除状态
  toggleShowDelete(){
    this.setData({
      isShowDelete: !this.data.isShowDelete
    })
  },
  // 删除记录
  deleteItem(event: WechatMiniprogram.CustomEvent){
    // 删除数据
    this.data.recentSearches.splice(event.mark?.index, 1)
    // 更新UI
    this.setData({
      recentSearches: this.data.recentSearches
    })
    // 本地存储
    wx.setStorageSync(search_history,this.data.recentSearches)
  },
  // 删除全部
  async clearAllHistory(){
    // 模拟对话框，二次确认
    const res = await wx.showModal({
      title:'温馨提示',
      content: '是否删除所有历史记录'
    })
    if (res.confirm) {
      // 清空历史记录
      this.setData({
        recentSearches: []
      })
    }
    // 本地存储
    wx.setStorageSync(search_history,this.data.recentSearches)
  }
})